由於雙十國慶的到來,因此國人旅遊潮的到來,飯店的定位系統做的好也會影響到體驗感,因此用node.js寫一個飯店定位系統提升便利性也是相當重要
首先,已經安裝了 Node.js 和相關的套件,然後創建一個新的 JavaScript 檔案(例如 hotelLocator.js
)並使用以下代碼填充它:
const express = require('express');
const app = express();
const port = 3000;
// 虛擬的飯店數據
const hotels = [
{ name: 'Hotel A', location: 'Location A' },
{ name: 'Hotel B', location: 'Location B' },
{ name: 'Hotel C', location: 'Location C' },
// 添加更多飯店信息
];
// 中間件,用於解析 JSON 請求主體
app.use(express.json());
// 處理查詢飯店的請求
app.post('/locate-hotel', (req, res) => {
const userLocation = req.body.location;
// 在實際應用中,這裡可以使用地理編碼服務來查找附近的飯店
// 這裡僅是一個示例,根據輸入位置返回虛擬的飯店信息
const nearbyHotels = hotels.filter(hotel => hotel.location === userLocation);
res.json(nearbyHotels);
});
// 啟動伺服器
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
這個程式使用 Express.js 創建一個簡單的 REST API,並模擬查找附近飯店的功能。當用戶發送 POST 請求到 /locate-hotel
路徑時,它將接受用戶的位置,然後返回在該位置附近的虛擬飯店信息。
引入相關的 Node.js 模組和套件:
express
: 這是一個流行的 Node.js 框架,用於簡化建立 Web 伺服器和處理 HTTP 請求的任務。創建一個 Express 應用程式:
const app = express();
const port = 3000;
在這裡,我創建了一個 Express 應用程式並設置它運行在 3000 號端口上。
定義虛擬的飯店數據:
const hotels = [
{ name: 'Hotel A', location: 'Location A' },
{ name: 'Hotel B', location: 'Location B' },
{ name: 'Hotel C', location: 'Location C' },
// 添加更多飯店信息
];
這是一個虛擬的飯店數據陣列,其中每個飯店都有名稱和位置信息。
使用 Express 中間件來解析 JSON 請求主體:
app.use(express.json());
這個中間件用於解析發送到 API 的 JSON 格式請求主體,以便我可以讀取用戶提供的位置信息。
處理查詢飯店的請求:
app.post('/locate-hotel', (req, res) => {
const userLocation = req.body.location;
// 在實際應用中,這裡可以使用地理編碼服務來查找附近的飯店
// 這裡僅是一個示例,根據輸入位置返回虛擬的飯店信息
const nearbyHotels = hotels.filter(hotel => hotel.location === userLocation);
res.json(nearbyHotels);
});
這個路由處理 POST 請求到 /locate-hotel
路徑。它首先從請求主體中讀取用戶提供的位置信息,然後在虛擬飯店數據中查找位於該位置的飯店,最後將結果以 JSON 格式返回給用戶。
啟動伺服器:
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
最後,我使用 app.listen
啟動伺服器,並在控制台上輸出伺服器運行的端口號。